Assembling personal information of a target person based upon third-party

ABSTRACT

Gathering personal information of a target person based upon third-party information. A user submits a request for personal information of a target person along with a request purposes. A system server identifies persons and entities to contact for responding to the request, and it queries the persons and entities to provide personal information of the target person. Based upon received responses, the system compiles and returns to the requestor the gathered personal information possibly with a personal profile of the target person. The system can also query the target person to receive categories of permitted access to the target person&#39;s personal information by the requestor.

REFERENCE TO RELATED APPLICATIONS

[0001] The present application is related to the following applications, all of which are incorporated herein by reference as if fully set forth: U.S. provisional patent application of Brian C. Roundtree, Ser. No. 60/182,330, entitled “Web-Based Personal Assistance Communication Method,” and filed Feb. 14, 2000; U.S. patent application of Brian C. Roundtree, entitled “Web-Based Personal Assistance Communication System,” and filed Jul. 17, 2000; U.S. patent application of Brian C. Roundtree, entitled “Web-Based Personal Assistance Communication Method,” and filed Jul. 17, 2000; U.S. patent application of Brian C. Roundtree, entitled “Web-Based Personal Assistance User Interface System,” and filed Jul. 17, 2000; U.S. patent application of Brian C. Roundtree, entitled “Voice-to-Concept Conversion System,” and filed on Sep. 8, 2000; U.S. patent application of Craig G. Eisler and Brian C. Roundtree, entitled “On-Line Service Provider Sign-Up System,” and filed on Sep. 8, 2000; U.S. patent application of Keldon V. Rush and Brian C. Roundtree, entitled “System for Converting Textual Concepts to Interactive Audio and Audio/Visual Presentations,” and filed on Sep. 8, 2000; U.S. patent application of Brian C. Roundtree, entitled “System for Obtaining Service-Related Information for Local Interactive Wireless Devices,” and filed on Sep. 8, 2000; U.S. patent application of Cristiano L S Pierry and Brian C. Roundtree, entitled “System for Secure Electronic Transactions Using Unique Identifiers for Order-Related Information,” and filed on Sep. 8, 2000; U.S. patent application of Brian C. Roundtree, entitled “Airline Flight Departure and Arrival Prediction Based Upon Historical and Real-Time Data,” and filed on same date herewith; U.S. patent application of Craig G. Eisler and Brian C. Roundtree, entitled “Hypertext Concept Notation for Dynamically Constructing a Sentence to Respond to a User Request,” and filed on same date herewith; U.S. patent application of Brian C. Roundtree, entitled “Automated Reservation and Appointment System Using Interactive Voice Recognition,” and filed on same date herewith; U.S. patent application of Craig G. Eisler and Brian C. Roundtree, entitled “Rendering Data Using Rendering Instructions Based Upon Concept Identifiers for the Data,” and filed on same date herewith; and U.S. patent application of Cristiano L S Pierry and Brian C. Roundtree, entitled “Automated Alert State Change of User Devices for Time-Based and Location-Based Events,” and filed on same date herewith.

FIELD OF THE INVENTION

[0002] The present invention relates to an apparatus and method for assembling personal information of a target person based upon third-party information.

BACKGROUND OF THE INVENTION

[0003] Wireless devices, such as cell phones and personal digital assistants (PDAs), are becoming more commonly used and have the potential for communication over the Internet in addition to traditional telephone networks. The Internet communication with these devices permits users to obtain services and other related information using wireless communication with the devices. For example, a user can download content from the world wide web on the Internet using a cell phone and have the information displayed on the display panel of the cell phone. Therefore, in addition to using the cell phone for voice communication, the user can obtain content over the Internet concerning, for example, services available from service providers. The user can also execute transactions over the Internet using the cell phone or other wireless device. For example, the user can make electronic purchases for good or services, analogous to how users can make transactions over the Internet using a personal computer having a connection to the Internet.

[0004] Many wireless devices, however, provide for limited ways to enter information for communications over the Internet. Cell phones, for example, typically have only a key pad in addition to a microphone, making entry of textual information slow and inconvenient. Other devices, such as PDAs, may have even more limited ways to enter textual information. Therefore, these devices do not typically provide the same ease of interacting over the Internet as provided by a personal computer having a keyboard and cursor-control device for easy and convenient “point and click” selection of content displayed in web pages. These devices may also be limited in how information can be displayed. Wireline devices, such as conventional phones, provide for even more limited interaction over the Internet.

[0005] Also, when using these user devices to execute the transactions, the information available through the transactions is often limited. A user request for content often results in generic content potentially applicable to many situations other than the particular situation of the user. For example, a user may want information about purchasing gifts for others or information about services available such as travel-related information. In response to a request for such information, the user may be provided with information about gifts for generic categories and other information for general travel-related services. Without targeting the information to the user's situation, the information may not have much value to the user.

[0006] Accordingly, a need exists for increased options and versatility for user's having wireless devices or wireline devices to interact and make transactions over the Internet, for increased versatility to request service or make transactions with service providers, and for obtaining more information targeted to a user's particular situation or request.

SUMMARY OF THE INVENTION

[0007] A method and apparatus consistent with the present invention distribute and provide personal information based upon a user request. A requestor submits a request for personal information relating to a target person and including a request purpose. The personal information of the target person is requested from a plurality of information sources and based upon the request, such as through sending messages to the information sources and receiving responses. The personal information gathered from the responses is provided to the requestor.

BRIEF DESCRIPTION OF THE DRAWINGS

[0008] The accompanying drawings are incorporated in and constitute a part of this specification and, together with the description, explain the advantages and principles of the invention. In the drawings,

[0009]FIG. 1 is a diagram of a system for processing requests for service;

[0010]FIG. 2 is a diagram of a network for communicating with wireless and wireline devices and service providers to process requests for service;

[0011]FIG. 3 is a diagram of exemplary components of a server for processing requests for service;

[0012]FIG. 4 is a diagram of exemplary components of a wireless device;

[0013]FIG. 5 is a flow chart of a generate request method for requesting personal information;

[0014]FIGS. 6 and 7 are a flow chart of a method for gathering personal information using third-party information;

[0015]FIG. 8 is a diagram of a page for querying a requestor to make a request for personal information;

[0016]FIG. 9 is a diagram of a page for use in submitting a request for personal information;

[0017]FIG. 10 is a diagram of a page for use in requesting personal information from a target person;

[0018]FIG. 11 is a diagram of a page for messaging third parties to request personal information concerning the target person; and

[0019]FIG. 12 is a diagram of a page for providing to a requestor the personal information of a target person.

DETAILED DESCRIPTION Introduction

[0020] Embodiments consistent with the present invention provide various features for a web-based electronic personal assistant, as described in the web-based personal assistance applications identified above. The electronic personal assistant is implemented with a system server that the receives requests from users through wireless or wireline devices and processes the requests in order to provide the user with requested service or information. These features permit the user to interact with the system server in a variety of ways such as through a display on the device, a keyboard or keypad, or through voice interaction. The system server can present information to the user in a variety of ways as well, such as through audio communication or through information presented on a display with, for example, textual information, screens, or web pages presented with HyperText Markup Language (HTML).

[0021] The requests, as explained in the web-based personal assistance applications identified above, can include any request for service or information. For example, a user may request a meeting, and in response the system server queries the user to obtain information required to arrange the meeting and then automatically makes the arrangements. As another example, a user may request information concerning services in a particular geographic location or based upon other parameters, and the system server can query the user to determine the type of information requested, such as particular types of retail establishments, and provide the information to the user. As another example, a user may request to purchase goods or services, or make reservations for services, and in response the system server queries the user to determine the type of goods or services desired as well as other information such as a desired price. Based upon that information, the system server automatically makes the purchase for the user. For the reservations example, the system server can query the user to determine information required to make the reservations for the user. For any request, the system server can access user preferences to obtain information required or useful to process the request, such as the user's credit card information and shipping address.

[0022] In addition, the system server can automatically notify the user of particular information. The system server typically maintains a database of preferences for the users in order to help process the requests. It also maintains a concept database and uses the concepts in order to retrieve and construct queries, such as text fragments, for the user. The use of only text fragments, for example, saves transmission time in comparison to transmission of graphical information over a network; alternatively, graphics can be used in addition to the text fragments.

[0023] Based upon the type of request, and potentially user preferences, the system server selects the appropriate queries from the concept database to obtain information to process the request. Upon completion of the processing, the system server can present to the user a sentence constructed from the related concepts in order to confirm the request. It can also use the sentence to document the request, retrieve the appropriate resources for it, and otherwise fulfill the request. This process, and the use of these concepts and the structure for a concept database, are further described in the web-based personal assistance applications identified above.

[0024] The system server can also cross-reference the concept database with a service provider database. In order to fulfill requests, the system server can access a database identifying available service providers for the request. At the end of each string of concepts in the concept database, that database can specify a link or pointer to the relevant service providers in the service provider database. For example, if the request is for a meeting, once the system server has all the relevant information as constructed from the concepts, the concept for the location of the meeting can include a pointer or link to the establishments proximate the location and available to provide food for the meeting. Therefore, information for relevant service providers can be associated with the appropriate concepts in the concept database.

Request Processing

[0025]FIG. 1 is a diagram of a system for fulfilling a request for service. The system includes a system server 10 for processing a request transmitted from a requestor 12 through a network 14 such as the Internet or other wireline or wireless network. System server 10 includes several software modules for processing the request from requester 12. A communicator module 16 manages an interface for the communications with requester 12 over network 14. Communicator module 16 receives the request and provides necessary formatting and other processing for transmitting it to a planner module 22.

[0026] Planner module 22 interacts with a service provider module 24 in order to obtain the resources for fulfilling the request. In particular, service provider module 24 interacts over a network 30, such as the Internet or a phone network, with one or more service providers 32 in order to obtain services to fulfill the request. Service provider module 24 provides for communication and data conversion for the interaction, while planner module 22 manages processing of the request and interacts with various databases for processing the request. A private credit card service module 28 can provide for secure order processing of the request to help safeguard users' personal information such as credit card numbers.

[0027] Once the planner module 22 has obtained the resources for the request, it communicates information to fulfill the request to an executor module 18. Executor module 18 includes a pending plan database 20 for storing and managing resources and other information to fulfill the request. Executor module 18 thus communicates back over network 14 with requestor 12 to provide confirmation of the request and also to execute the request.

[0028] A learning module 26 can provide for fine-tuning plan data within a database 34 in order to more efficiently process requests, particularly from the same requestor. Other databases include a database 36 storing financial data accessed by executor module 18, and a database 38 storing personal data accessed by executor module 18 and planner module 22. The personal data can include an account for each user having a profile and preferences for the users, and the information can be indexed by a particular user identifier such as a phone number or code.

[0029] Table 1 illustrates a user account. As shown, the user accounts can include users' preferences for a wide variety of information such as for travel, dining, and other types of service providers. The user preferences can be continually updated and refined over time as the system server gathers more information concerning the user, and the system server can optionally use learning models for the refinements and use the preferences to make “smart choices” in processing users' requests. The information can be stored in a variety of ways such as in a relational database or with name-value pairs in Extensible Markup Language (XML). TABLE 1 user 1 identifier data contact name, address profile user 1 characteristics hotel information user 1 hotel preferences airline information user 1 airline preferences rental car information user 1 rental car preferences restaurant information user 1 restaurant preferences service provider preferences user 1 service provider preferences other category user 1 preferences for the category

[0030] Processing to fulfill the request is further explained in the web-based personal assistance applications identified above.

Network

[0031]FIG. 2 is a diagram of an exemplary network 50 illustrating interaction for receiving and processing requests from users such as requester 12. It illustrates how the system can receive requests through wireless and wireline transmission over conventional phone and cellular networks as well as the Internet or other computer networks. A requester typically makes a request from a wireless or wireline device. The wireless devices include any device capable of wireless electronic communication and examples include the following: cellular phones; PDAs with wireless network access; wireless Internet appliances; personal computers (including desktop, laptop, notebook, and others) with wireless network access; and personal computers with microphones, speakers, and circuitry for permitting wireless phone calls. The wireline devices include any device capable of electronic wireline communication and examples include the following: conventional phones; PDAs with wireline network access; Internet appliances; personal computers (including desktop, laptop, notebook, and others) with wireline network access; and personal computers with microphones, speakers, and circuitry for permitting wireline phone calls.

[0032] A wireless device 52, for example, can interact through wireless transmission with a base station 56 for communication over a personal communication system (PCS) 58. A request may also be made from a wireline device 54 communicating over a public switched telephone network (PSN) 60. Systems for wireless and wireline communication, includes a PCS and PSN, are known in the art.

[0033] Communications through networks 58 and 60 are transmitted through a gateway 62 and potentially a buffer 64 to a speech processor 66 for performing processing of audio or particular types of communications, such as for voice-to-text conversion. Also, the communication may occur directly from gateway 62 to an interface server 68. Interface server 68 controls gateway 62, and it provides an interface between a system server 76 and gateway 62, speech processor 66, and the world wide web 70.

[0034] System server 76 corresponds with system server 10 in FIG. 1 to process user requests. Interface server 68 provides the data conversion and processing for transferring data to and from system server 76. As shown by the dashed line, speech processor 66 and interface server 68 can be implemented with the same physical machine or with different machines. Also, system server 76 can be implemented with one or more physical machines and can also be programmed to implement the functions of speech processor 66 and interface server 68.

[0035] In addition to receiving requests over networks 58 and 60, interface server 68 can receive a request over the world wide web 70. In particular, a wireless device 74 can interact through wireless communication with a PCS 72, which communicates over the world wide web 70 through a communication protocol such as, for example, the wireless application protocol (WAP). The WAP for communications over the Internet is known in the art.

[0036] System server 76 can communicate over the world wide web 78 with various service provides 80 to fulfill requests. In addition, system server 76 can communicate with credit card processing or other financial networks 86 in order to provide financial processing for fulfilling requests. Networks 86 can include known networks, including banking networks, for processing credit card transactions. As shown, service providers 80 and financial networks 86 can also send and receive communications through a PCS 82 and PSN 84.

[0037] System server 76 can communicate directly over the world wide web 78 to a gateway 88 and base station 90 in order to provide communication directly with a wireless device 92. Also as shown, communications can occur from system server 76 back through interface server 68 and speech processor 66 to the end user wireless devices 52 and 74 and wireline device 54; system server 76 can also communicate directly with gateway 62, as shown. Those communications can provide, for example, confirmation of a request or information responsive to a request.

[0038] Network 50 illustrates fundamental hardware components for communications over the various types of networks shown. As known in the art, network 50 can include additional components and can also include components for providing services known in the art with respect to phone calls. For example, it can include a caller ID service to provide system server 76 with the phone number of the user's wireless or wireline device originating a communication. Also, network 50 can include other means for communication of data such as through satellite transmission. For transmission over the Internet, network 50 can use Transmission Control Protocol/Internet Protocol (TCP/IP) or other protocols.

Server Components

[0039]FIG. 3 depicts a server 100 illustrating exemplary hardware components of system server 10 and other machines used by the system, such as speech processor 66 and interface server 68. Server 100 includes a connection with a network 116 such as the Internet or other type of computer or phone networks, which may correspond with the networks shown in FIGS. 1 and 2. Server 100 typically includes a memory 102, a secondary storage device 110, a processor 112, an input device 114, a display device 108, and an output device 106.

[0040] Memory 102 may include random access memory (RAM) or similar types of memory, and it may store one or more applications 104 for execution by processor 112. Applications 104 may correspond with software modules to perform processing for the functions described below. Secondary storage device 110 may include a hard disk drive, floppy disk drive, CD-ROM drive, or other types of non-volatile data storage, and it may correspond with the various databases shown in FIG. 1. Processor 112 may execute applications or programs stored in memory 102 or secondary storage 110, or received from the Internet or other network 116. Input device 114 may include any device for entering information into server 100, such as a keyboard, key pad, cursor-control device, touch-screen (possibly with a stylus), or microphone. Display device 108 may include any type of device for presenting visual information such as, for example, a computer monitor, flat-screen display, or display panel. Output device 106 may include any type of device for presenting a hard copy of information, such as a printer, and other types of output devices include speakers or any device for providing information in audio form. Server 100 can possibly include multiple input devices, output devices, and display devices.

[0041] Although server 100 is depicted with various components, one skilled in the art will appreciate that this server can contain additional or different components. In addition, although aspects of an implementation consistent with the present invention are described as being stored in memory, one skilled in the art will appreciate that these aspects can also be stored on or read from other types of computer program products or computer-readable media, such as secondary storage devices, including hard disks, floppy disks, or CD-ROM; a carrier wave from the Internet or other network; or other forms of RAM or ROM. The computer-readable media may include instructions for controlling server 100 to perform a particular method.

Wireless Device Components

[0042]FIG. 4 illustrates exemplary hardware components of a wireless device 120, which may correspond with the exemplary wireless devices identified above. Wireless device 120 typically includes a memory 122, a secondary storage device 130, a processor 132, an input device 134, a display device 128, an output device 126, a transmitter/receiver 136, and a short range transmitter/receiver 138.

[0043] Memory 122 may include RAM or similar types of memory, and it may store one or more applications 124 for execution by processor 132. Applications 124 may correspond with software modules to perform processing for the functions described below, and they may also include web browser programs for retrieving and displaying content from the Internet. Secondary storage device 130 may include a hard disk drive, floppy disk drive, CD-ROM drive, or other types of non-volatile data storage such as a ROM. Processor 132 may execute applications or programs stored in memory 122 or secondary storage 130. Input device 134 may include any device for entering information into wireless device 120, such as a keyboard, key pad, cursor-control device, touch-screen (possibly with a stylus), or microphone. Wireless device 120 can include multiple input devices; for example, it can include both a microphone and key pad for a cell phone. Display device 128 may include any type of device for presenting visual information such as, for example, a computer monitor, flat-screen display, or display panel. Output device 126 typically includes a speaker for providing information in audio form. It can also include a device for providing a hard copy of information such as a printer, or provide a port for a connection to a printer. Wireless device 120 can possibly include multiple input devices, output devices, and display devices.

[0044] Transmitter/receiver 136 provides for wireless communication with phone networks or computer networks such as is shown in FIGS. 1 and 2. Transmitter/receiver 136 can be implemented with known RF transmitters and receivers for providing cellular transmission between wireless device 120 and base stations such as base stations 56 and 90, or it can be implemented with a wireless transmitter/receiver for other types of communication such as a satellite transmission.

[0045] Short range transmitter/receiver 138 provides for wireless short range communication with other wireless devices, and it can be implemented with transmitters and receivers that operate according to the IEEE standard 802.11 for local wireless networks or according to the standard referred to as the Bluetooth™ technology for direct wireless communication between local interactive wireless devices; that technology is explained in, for example, the Specification of the Bluetooth System, Core, v1.0 B, Dec. 1, 1999 and the Specification of the Bluetooth System, Profiles, v1.0 B, Dec. 1, 1999, both of which are incorporated herein by reference.

[0046] In addition, even if a wireless device does not contain short range transmitter/receiver 138, technology exists to obtain an approximate geographic location of certain wireless devices. In particular, using multiple base stations the signal from a cellular phone, for example, can be triangulated in order to obtain an approximate geographic location of the cellular phone, including an indication of its vertical (altitude) location.

[0047] Although wireless device 120 is depicted with various components, one skilled in the art will appreciate that this wireless device can contain additional or different components. In addition, although aspects of an implementation consistent with the present invention are described as being stored in memory, one skilled in the art will appreciate that these aspects can also be stored on or read from other types of computer program products or computer-readable media, such as secondary storage devices, including hard disks, floppy disks, or CD-ROM; a carrier wave from the Internet or other network; or other forms of RAM or ROM. The computer-readable media may include instructions for controlling wireless device 120 to perform a particular method.

[0048] Exemplary hardware components for wireline devices, such as the examples provided above, can include the same components as wireless device 120 except without the transmitter/receiver 136 and the short range transmitter/receiver 138.

Personal Information Gathering

[0049] The system server can process requests for personal information and gather the information using third-party sources. When a requestor submits a request for personal information of a target person, for example, the system server can send e-mail messages to persons who know or have a relationship with the target person requesting personal information. It can also send e-mail messages to entities that may have personal information of the target person. Those entities, for example, may include retail or on-line stores where the target has made purchases; therefore, the entities may have knowledge of the target person's preferences and shopping habits. The system server can also query the target person for permission to provide categories of the target person's stored personal information to the requester. After receiving responses, the system server compiles the personal information of the target person and provides it to the requester.

[0050] The system server can obtain from the requestor a purpose for the request for personal information in order to help formulate the messages for obtaining personal information. For example, if the purpose is to obtain a gift for the target person for a particular occasion such as a birthday, the system server can formulate the e-mail messages to solicit personal information to recommend a birthday gift for the target person. Any type of purpose can be used as a request purpose, and obtaining a request purpose helps the system server retrieve or formulate a particular protocol for obtaining the personal information to best respond to the request.

[0051]FIG. 5 is a flow chart of a generate request method 150 for requesting personal information. Method 150 can be implemented in software modules within a server such as system server 10. In method 150, the system server, which may be implemented with system server 10 described above, determines whether to query a requestor to make a request for personal information of a particular target person (step 152). Based upon personal profiles of users in the database such as personal data 38, for example, the system server can automatically determine upcoming occasions for users. A personal profile can include information identifying and describing the target person, as well as other information.

[0052] The system server can then query persons related to those users concerning whether they want personal information for the user in order to, for example, purchase a gift for the user in celebration of the occasion. Therefore, in sufficient advance time of the occasions, the system server can “look ahead” in the personal profiles to identify upcoming occasions for users and send messages to potential requesters. The users may even specify in their profiles the persons to send requests to based upon particular occasions, or the system server can identify those persons by locating in the database for persons having relationships with users such as relatives, friends, co-workers, or persons who have received gifts from the users.

[0053] If the system server identifies a potential requestor to query (step 154), it sends a message to the requestor (step 156). The message can be implemented, for example, with an e-mail message. FIG. 8 is a diagram of a page 220 for querying a potential requestor to make a request for personal information. Page 220 includes a message 222 to identify an occasion for the target person. The system server can insert an identification of the occasion in section 224 and an identification of the target person in section 226. Page 220 also includes a query 228 asking if the requestor wants to request personal information of the target person, as also identified in section 230. The requester can select a “yes” section 232 to request the personal information or select a “no” section 234 to cancel the query.

[0054] Page 220, and the other identified pages, can be implemented, for example, as web pages in HTML, as e-mail messages, or in hard copy form. When implemented electronically, such as in web pages, users may select portions of the pages to enter information or commands. Those sections can be selected, for example, by using a cursor-control device to “click on” or “double click on” the sections, or by entering keyed or spoken commands. The term “section” refers to at least a portion of the page and possibly including the entire page.

[0055] The system server determines whether it receives a reply, such as a reply e-mail, from the requestor (step 158). If so, it formats a request for personal information and sends the request to a personal information module in the system server for processing (step 160). Instead of sending an e-mail message, the page shown in FIG. 8 could be mailed in hard copy form to the potential requester with an indication of how to reply in order to make the request such as, for example, a return address to send the request, a web site to submit the request, an e-mail address, or a telephone number.

[0056]FIGS. 6 and 7 are a flow chart of a method 170 for gathering personal information using third-party information. Method 170 can be implemented in software modules within a server such as system server 10. In method 170, the system server receives a request for personal information of a target person and identifying a request purpose (step 172). The request can be submitted directly from a person making the request or from the system server in response to querying the requestor as described above.

[0057]FIG. 9 is a diagram of a page 240 for use in requesting personal information. A requester can, for example, access a web site to fill in the form shown in page 240, or send an e-mail or direct mail message with the request. Page 240 includes a section 242 for the requestor to enter the requestor's identification and a section 244 to enter an identification of the target person. A section 246 permits the requester to enter a date by which the requester would like to receive the personal information. The requestor can select a “submit” section 248 to submit the request or select a “cancel” section 247 to cancel the request.

[0058] In response to the request, the system server formulates system criteria to obtain the personal information (step 174). The “system criteria” refers to any protocol, technique, or strategy to attempt to obtain the requested personal information potentially based upon the request purpose. For example, the system server can maintain a database or protocols indexed or organized according to types of request purposes. The protocols can identify, for example, the types of persons and entities to contact, whether to contact the target person, and a type of message to send to the persons and entities. Also, based upon a date for the occasion, for example, the system server can specify time parameters as part of the protocol for obtaining the requested personal information, and the time parameters can be configured to permit sufficient time to make multiple requests for personal information and to subsequently provide the personal information to the requestor in advance of the occasion date.

[0059] As examples, consider the following protocols. For a birthday occasion, the system server can e-mail the target person, friends, and relatives, as identified in the target person's profile. It can also identify any retail companies where the target person has made purchases and send e-mails to them as well. The time parameters can specify sending first e-mails three weeks before the birthday, potentially sending second e-mails two weeks before the birthday, and providing the received personal information at least one week before the birthday. For a surprise birthday party, the system server can use the same protocol except it does not send a request to the target person. For an office party, the system server can specify a protocol of only sending e-mail messages to co-workers of the target person, along with the same entities and time parameters as the birthday protocol. These examples are provided for illustrative purposes only.

[0060] Based upon the system criteria, the system server retrieves a list of options in order to attempt to obtain the personal information (step 176). The system server can attempt to obtain the personal information from a variety of sources such as, for example, the personal information database (step 178), the target person (step 180), persons having some type of relationship with or knowledge of the target person (step 182), and entities potentially having knowledge of the target person (step 184). The options to select and related parameters can be determined from the system criteria, as explained above.

[0061] To obtain information from the personal information database such as personal data 38 (step 178), the system server retrieves information from the database optionally with a profile for the target person (step 186). The system server can maintain personal information on users and stored in the personal information database. That information can be derived from, for example, obtaining profile information from the user upon sign-up, having the user complete a questionnaire, or monitoring and recording activity of the user through the system such as purchases made and service providers used for the purchases. The system server can also record and identify any permissions of the user concerning release of the personal information. Therefore, users can control, as further explained below, how their personal information is distributed.

[0062] To obtain information from the target person (step 180), the system server sends a request to the target person optionally with an identification of the requestor (step 188). FIG. 10 is a diagram of a page 250 for use in requesting personal information from a target person. Page 250 includes a section 251 to identify the requestor; optionally, the system server can insert an anonymous identifier. A section 252 permits the target person to specify permitted access to the personal information by the requester. In particular, section 252 includes several categories of information with, in this example, corresponding “check” boxes such as sections 254 and 256. The target person can permit access to a category by entering a “check” mark in the corresponding box using, for example, a cursor control device to “click on” the box. In addition to categories, the system server can permit the target person to specify or deny access to the target person's profile through section 258.

[0063] Categories can include any specification of preferences for the target person. For example, it can include categories of books purchased from retail and on-line establishments; those categories can include family-oriented books, children's books, and various categories of fiction and non-fiction books. The target person's books purchased can be maintained in a buying list organized by the categories, and the target person can specify by category which identification of books purchases is to be released to the requester. Other types of categories can be used, as well as any type of product or service for the categories.

[0064] The target person can also enter any other personal information in section 260 such as by entering a text message, attaching a file, providing a link to a web site having personal information of the target person, or entering other types of information. The target person can select a “submit” section 262 to submit the permissions and personal information or select a “cancel” section 261 to cancel the transaction. Therefore, the system server potentially receives a response, such as page 250 filled in with data, from the target person identifying permitted access categories to the target person's personal information (step 190).

[0065] To request personal information from third-party persons (step 182), the system server identifies persons to receive the request (step 192). The system server can access the personal information database in order to identify persons having a relationship with the target person and thus potentially having personal information for the target. Upon identifying the persons, the system server sends messages to the persons requesting personal information of the target person (step 194).

[0066]FIG. 11 is a diagram of a page 270 for messaging third parties to provide personal information concerning the target person. Page 270 can be used to message both persons and entities. It includes sections 272 and 274 to identify the target person. A section 276 permits the third parties to enter preferences of the target person. In particular, for each specified category, the third party can enter a preference for the target person in the corresponding section, such as a section 278 for the first category. These categories can correspond with or include those exemplary categories discussed above. As another example, they can include the target person's favorite types of books, restaurants, and entertainment. A section 280 permits the third party to enter other personal information of the target person such as a text message. The third party can submit a response by selecting a “submit” section 282 or cancel the request by selecting a “cancel” section 281. The system server can alternatively mail a hard copy version of page 270 to the persons, or attempt to contact the persons through phone communication to query them about the requested personal information. The system server potentially receives responses from the persons identifying categories of preferences for the target person and possibly other types of personal information (step 196).

[0067] To request personal information from entities (step 184), the system server identifies entities to receive the request (step 198). The system server can access the personal information database in order to identifies entities potentially having personal information for the target. For example, those entities can include companies maintaining a bridal registry, a gift registry, a wish list, items purchased, or other identifications of products or services purchased by the target person. Therefore, the system server can use, for example, previously-gathered personal information of the target person to identify the entities. It can also perform a search or make inquiries to determine if the target person is registered with certain entities.

[0068] Upon identifying the entities, the system server sends messages to the entities requesting personal information of the target person (step 200). It can use the same page 270 shown in FIG. 11. It can alternatively send a hard copy version of the page 270 or query representatives of the entities through phone communication. The system server potentially receives responses from the entities identifying categories of preferences for the target person and possibly other types of personal information (step 202).

[0069] After executing the options and receiving responses, the system server determines whether to attempt to obtain more personal information of the target person based upon the system criteria (step 204). For example, it may determine that sufficient time exists before the occasion date to send more queries or can determine that it did not receive responses to a certain number of the messages. If it determines that it should attempt to obtain more personal information (step 206), the system returns to step 176 to execute the options again according to the system criteria.

[0070] Otherwise, the system server provides the gathered personal information to the requestor (step 208). FIG. 12 is a diagram of a page 290 for providing to a requestor the personal information of a target person. Page 290 includes a section 292 to identify the target person. In a section 294, the system server can insert an identification of the target person's preferences for the displayed categories as derived from the gathered personal information. For example, in a section 296 the system server can insert an identification of the target person's preferences for the first category. In a section 298 the system server can insert other personal information for the target person such as a personal profile for the target person or information derived from the text messages provided by the target person and the third parties. The system server can alternatively provide page 290 in hard copy form and mail it to the requestor or provide the information in other forms such as through telephone communication. Accordingly, the system server can provide in page 290, or other form, one or more of the following: an identification of service providers to satisfy the request purpose; an identification of services to satisfy the request purpose; an identification of products to satisfy the request purpose; or profile information relating to the target person.

[0071] The system server can also prompt the requestor to determine whether the requestor wants to attempt to obtain more personal information of the target person (step 210). For example, page 290 include a message 300 querying whether the requestor wants to attempt to obtain additional personal information for the target person as identified in a section 302. The requestor can select a “yes” section 304 to request additional information or select a “no” section 303 to decline the query. If the requestor wants to obtain more personal information (step 212), the system server returns to step 174 to formulate new system criteria and execute the options again to attempt to obtain more personal information of the target person. The new system criteria may be the same as the original criteria, or the system server can refine the criteria based upon, for example, results of the previous attempt to obtain personal information. For example, the system server may only query those persons and entities who did not respond to the previous attempt to obtain personal information of the target person.

[0072] Otherwise, if the requestor did not want to attempt to obtain more personal information (step 212), the system server stores the gathered personal information in the personal information database such as personal data 38 and associates it with the target person (step 214). In this manner, the system server can continuously update the personal information database for use in responding to future requests for personal information. The system server closes the transaction (step 216).

[0073] While the present invention has been described in connection with an exemplary embodiment, it will be understood that many modifications will be readily apparent to those skilled in the art, and this application is intended to cover any adaptations or variations thereof. For example, various types of user devices, hardware components for the devices and servers, and types of network transmissions may be used without departing from the scope of the invention. This invention should be limited only by the claims and equivalents thereof. 

What is claimed is:
 1. A method for distributing and providing personal information based upon a user request, comprising: receiving from a requestor a request for personal information relating to a target person, the request including a request purpose; requesting the personal information of the target person from a plurality of information sources and based upon the request; gathering the personal information based upon responses to the requesting; and providing the gathered personal information to the requester.
 2. The method of claim 1 wherein the receiving step includes receiving a gift purpose as the request purpose.
 3. The method of claim 1 wherein the gathering step includes obtaining the personal information from the target person.
 4. The method of claim 1 wherein the receiving step includes receiving the request from a server and including the request purpose based upon date-related information.
 5. The method of claim 1, further including: transmitting a query to the requester, the query relating to submitting a request for personal information for the target person; and receiving selection of the query as the request.
 6. The method of claim 1 wherein the requesting step includes sending messages requesting the personal information from a plurality of persons.
 7. The method of claim 1, further including: sending a request for the personal information to the target person; and receiving from the target person an indication of permitted access to the personal information.
 8. The method of claim 7, further including: sending to the target person a request for the personal information along with an identification of the requestor; and receiving from the target person an indication of permitted access to the personal information by the requestor.
 9. The method of claim 6, further including identifying the plurality of persons based upon relationships with the target person.
 10. The method of claim 1 wherein the requesting step includes sending messages requesting the personal information from a plurality of entities.
 11. The method of claim 10, further including identifying the plurality of entities based upon previously-gathered personal information of the target person.
 12. The method of claim 1, further including querying the requestor to determine if the requestor wants to request additional personal information.
 13. The method of claim 1, further including storing the personal information and associating the stored personal information with the target person.
 14. The method of claim 1, further including obtaining the personal information from a database storing information related to the target person.
 15. The method of claim 1 wherein the providing step includes providing at least one of the following to the requester: an identification of service providers to satisfy the request purpose; an identification of services to satisfy the request purpose; an identification of products to satisfy the request purpose; or profile information relating to the target person.
 16. An apparatus for distributing and providing personal information based upon a user request, comprising: a receive module for receiving from a requestor a request for personal information relating to a target person, the request including a request purpose; a request module for requesting the personal information of the target person from a plurality of information sources and based upon the request; a gather module for gathering the personal information based upon responses to the requesting; and a provide module for providing the gathered personal information to the requestor.
 17. The apparatus of claim 16 wherein the receive module includes a module for receiving a gift purpose as the request purpose.
 18. The apparatus of claim 16 wherein the gather module includes a module for obtaining the personal information from the target person.
 19. The apparatus of claim 16 wherein the receive module includes a module for receiving the request from a server and including the request purpose based upon date-related information.
 20. The apparatus of claim 16, further including: a module for transmitting a query to the requester, the query relating to submitting a request for personal information for the target person; and a module for receiving selection of the query as the request.
 21. The apparatus of claim 16 wherein the request module includes a module for sending messages requesting the personal information from a plurality of persons.
 22. The apparatus of claim 16, further including: a module for sending a request for the personal information to the target person; and a module for receiving from the target person an indication of permitted access to the personal information.
 23. The apparatus of claim 22, further including: a module for sending to the target person a request for the personal information along with an identification of the requester; and a module for receiving from the target person an indication of permitted access to the personal information by the requester.
 24. The apparatus of claim 21, further including a module for identifying the plurality of persons based upon relationships with the target person.
 25. The apparatus of claim 16 wherein the request module includes a module for sending messages requesting the personal information from a plurality of entities.
 26. The apparatus of claim 25, further including a module for identifying the plurality of entities based upon previously-gathered personal information of the target person.
 27. The apparatus of claim 16, further including a module for querying the requester to determine if the requestor wants to request additional personal information.
 28. The apparatus of claim 16, further including a module for storing the personal information and associating the stored personal information with the target person.
 29. The apparatus of claim 16, further including a module for obtaining the personal information from a database storing information related to the target person.
 30. The apparatus of claim 16 wherein the provide module includes a module for providing at least one of the following to the requestor: an identification of service providers to satisfy the request purpose; an identification of services to satisfy the request purpose; an identification of products to satisfy the request purpose; or profile information relating to the target person. 